package demoMod.nanaki.potions;

import basemod.BaseMod;
import basemod.abstracts.CustomPotion;
import com.badlogic.gdx.graphics.Color;
import com.megacrit.cardcrawl.core.AbstractCreature;
import com.megacrit.cardcrawl.core.CardCrawlGame;
import com.megacrit.cardcrawl.helpers.PowerTip;
import com.megacrit.cardcrawl.localization.PotionStrings;
import com.megacrit.cardcrawl.potions.AbstractPotion;
import demoMod.nanaki.NanakiMod;
import demoMod.nanaki.actions.StruckUpAction;

public class GramoBottle extends CustomPotion {
    public static final String ID = NanakiMod.makeID("GramoBottle");
    private static final PotionStrings potionStrings = CardCrawlGame.languagePack.getPotionString(ID);
    private static final String NAME = potionStrings.NAME;
    private static final PotionRarity RARITY = PotionRarity.RARE;
    private static final PotionSize POTION_SIZE = PotionSize.EYE;
    private static final PotionColor POTION_COLOR = PotionColor.ELIXIR;

    public GramoBottle() {
        super(NAME, ID, RARITY, POTION_SIZE, POTION_COLOR);
        this.isThrown = false;
        this.targetRequired = false;
        this.labOutlineColor = NanakiMod.GREYN.cpy();
        this.liquidColor = Color.BROWN.cpy();
    }

    @Override
    public void initializeData() {
        this.potency = this.getPotency();
        this.description = potionStrings.DESCRIPTIONS[0];
        this.tips.clear();
        this.tips.add(new PowerTip(this.name, this.description));
        this.tips.add(new PowerTip(BaseMod.getKeywordProper(potionStrings.DESCRIPTIONS[1]), BaseMod.getKeywordDescription("nnk:struckup")));
    }

    @Override
    public void use(AbstractCreature target) {
        addToBot(new StruckUpAction());
    }

    @Override
    public int getPotency(int ascensionLevel) {
        return 0;
    }

    @Override
    public AbstractPotion makeCopy() {
        return new GramoBottle();
    }
}
